2106ea493f1255ce838e7e55f8470dd6ed7ef737,resolver/src/main/java/org/apache/felix/resolver/ResolverImpl.java,ResolverImpl,checkDynamicPackageSpaceConsistency,#ResolveSession#Resource#Candidates#Map#Map#,1131

Before Change


                            // See if we can permutate the candidates for blamed
                            // requirement; there may be no candidates if the resource
                            // associated with the requirement is already resolved.
                            List<Capability> candidates = permutation.getCandidates(req);
                            if ((candidates != null) && (candidates.size() > 1 || Util.isOptional(req)))
                            {
                                mutated.add(req);
                                // Remove the conflicting candidate.
                                candidates.remove(0);
                                if (candidates.isEmpty())
                                {
                                    permutation.clearCandidates(req);
                                }
                                // Continue with the next uses constraint.
                                break;

After Change


                            // See if we can permutate the candidates for blamed
                            // requirement; there may be no candidates if the resource
                            // associated with the requirement is already resolved.
                            if (permutation.canRemoveCandidate(req)) {
                                permutation.removeFirstCandidate(req);
                                mutated.add(req);
                                break;
                            }